package com.borrowed.book.book.domain;

import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.util.Date;

public class SelectBookOutDto {

    private Long id;
    @ApiModelProperty(value ="图书名称",example = "冰与火之歌",dataType = "String",required = true)
    private String bookName;

    @ApiModelProperty(value ="ISBN",example = "NO1000001",dataType = "String")
    private String isbn;

    @ApiModelProperty(value ="页数",example = "500",dataType = "Integer",required = true)
    private Integer paperNumber;

    @ApiModelProperty(value ="作者",example = "乔治·雷蒙德·理查德·马丁",dataType = "String")
    private String author;

    @ApiModelProperty(value ="出版社",example = "清华大学出版社",dataType = "String")
    private String publisher;

    @ApiModelProperty(value ="装订类型",example = "1(字典：bindingType)",dataType = "String")
    private String bindingType;

    @ApiModelProperty(value ="封面",dataType = "file")
    private String coverUrl;

    @ApiModelProperty(value ="数量",example = "10",dataType = "Integer")
    private Integer number;

    @ApiModelProperty(value ="剩余数量（自动计算，不用输入）",example = "10",dataType = "Integer")
    private Integer remainingNumber;

    @ApiModelProperty(value ="分组ID",example = "3",dataType = "Long")
    private Long groupId;

    @ApiModelProperty(value ="分组名称",example = "哈利波特系列",dataType = "String")
    private String groupName;

    @ApiModelProperty(value ="标签IDs,多个以逗号隔开",example = "1,2,3",dataType = "String")
    private String labels;

    @ApiModelProperty(value ="标签名称,多个以逗号隔开",example = "启蒙读物,数学,绘画",dataType = "String")
    private String labelsStr;

    @ApiModelProperty(value ="开本",example = "2",dataType = "String")
    private String bookSize;

    @ApiModelProperty(value ="价格",example = "120",dataType = "BigDecimal")
    private BigDecimal price;

    @ApiModelProperty(value ="入库价格",example = "100",dataType = "BigDecimal")
    private BigDecimal storagePrice;

    @ApiModelProperty(value ="来源",example = "网络购买",dataType = "String")
    private String source;

    @ApiModelProperty(value ="借阅价格",example = "2",dataType = "BigDecimal")
    private BigDecimal borrowPrice;

    private Date createTime;

    private Date updateTime;

    @ApiModelProperty(value ="简介",example = "建议富文本编辑内容，内容可以很丰富的html内容",dataType = "String")
    private String briefIntroduce;

    @ApiModelProperty(value ="借阅过次数",example = "2",dataType = "Long")
    private Long borrowCount;

    @ApiModelProperty(value ="书位",example = "2",dataType = "Integer")
    private Integer places;


    public Integer getPlaces() {
        return places;
    }

    public void setPlaces(Integer places) {
        this.places = places;
    }

    public Long getBorrowCount() {
        return borrowCount;
    }

    public void setBorrowCount(Long borrowCount) {
        this.borrowCount = borrowCount;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getGroupName() {
        return groupName;
    }

    public void setGroupName(String groupName) {
        this.groupName = groupName;
    }

    public String getLabels() {
        return labels;
    }

    public void setLabels(String labels) {
        this.labels = labels;
    }

    public String getLabelsStr() {
        return labelsStr;
    }

    public void setLabelsStr(String labelsStr) {
        this.labelsStr = labelsStr;
    }

    public String getBookName() {
        return bookName;
    }

    public void setBookName(String bookName) {
        this.bookName = bookName == null ? null : bookName.trim();
    }


    public String getIsbn() {
        return isbn;
    }

    public void setIsbn(String isbn) {
        this.isbn = isbn;
    }

    public Integer getPaperNumber() {
        return paperNumber;
    }

    public void setPaperNumber(Integer paperNumber) {
        this.paperNumber = paperNumber;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author == null ? null : author.trim();
    }

    public String getPublisher() {
        return publisher;
    }

    public void setPublisher(String publisher) {
        this.publisher = publisher == null ? null : publisher.trim();
    }

    public String getBindingType() {
        return bindingType;
    }

    public void setBindingType(String bindingType) {
        this.bindingType = bindingType == null ? null : bindingType.trim();
    }

    public String getCoverUrl() {
        return coverUrl;
    }

    public void setCoverUrl(String coverUrl) {
        this.coverUrl = coverUrl == null ? null : coverUrl.trim();
    }

    public Integer getNumber() {
        return number;
    }

    public void setNumber(Integer number) {
        this.number = number;
    }

    public Integer getRemainingNumber() {
        return remainingNumber;
    }

    public void setRemainingNumber(Integer remainingNumber) {
        this.remainingNumber = remainingNumber;
    }

    public Long getGroupId() {
        return groupId;
    }

    public void setGroupId(Long groupId) {
        this.groupId = groupId;
    }

    public String getBookSize() {
        return bookSize;
    }

    public void setBookSize(String bookSize) {
        this.bookSize = bookSize == null ? null : bookSize.trim();
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public BigDecimal getStoragePrice() {
        return storagePrice;
    }

    public void setStoragePrice(BigDecimal storagePrice) {
        this.storagePrice = storagePrice;
    }

    public String getSource() {
        return source;
    }

    public void setSource(String source) {
        this.source = source == null ? null : source.trim();
    }

    public BigDecimal getBorrowPrice() {
        return borrowPrice;
    }

    public void setBorrowPrice(BigDecimal borrowPrice) {
        this.borrowPrice = borrowPrice;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getBriefIntroduce() {
        return briefIntroduce;
    }

    public void setBriefIntroduce(String briefIntroduce) {
        this.briefIntroduce = briefIntroduce == null ? null : briefIntroduce.trim();
    }
}
